/*
 * 描          述:  <描述>
 * 修  改   人:  Administrator
 * 修改时间:  2014年4月23日
 * <修改描述:>
 */
package com.tx.component.task.context;

import com.tx.core.exceptions.util.AssertUtils;

/**
 * 获取任务执行容器<br/>
 * @author  PengQY
 * @version  [版本号, 2017年3月19日]
 * @see  [相关类/方法]
 * @since  [产品/模块版本]
 */
public class TaskContextImpl extends TaskContextBuilder
        implements TaskContext {
    
    /** 交易容器 */
    protected static TaskContextImpl context;
    
    /**
     * @return 返回 applynoteContext
     */
    public static TaskContextImpl getContext() {
        if (TaskContextImpl.context != null) {
            return context;
        }
        synchronized (TaskContextImpl.class) {
            TaskContextImpl.context = (TaskContextImpl) applicationContext
                    .getBean(beanName);
        }
        
        AssertUtils.notNull(context, "context is null.maybe not inited.");
        return context;
    }
}
